package cn.b.sky.form.service;

import java.util.List;
import java.util.Map;

/**
 * <strong>Title : BusinessTableRowService.java<br></strong>
 * <strong>Package : cn.b.sky.flowable.service<br></strong>
 * <strong>Description : </strong>TODO@类注释说明写在此处@<br> 
 * <strong>Create on : 2016年9月30日 下午2:48:59<br></strong>
 * <p>
 * @author ShiYing.Ke<br>
 * @version <strong>v1.0.0</strong><br>
 * <br>
 * <strong>修改历史:</strong><br>
 * 修改人|修改日期|修改描述<br>
 * -------------------------------------------<br>
 * <br>
 * <br>
 */
public interface BusinessTableRowService {

	/**
	 * <strong>Title : insertRow<br>
	 * </strong> <strong>Description :
	 * </strong>向指定的数据库表tableName中新增一行数据row，并返回所新增数据的ID值。<br>
	 * <strong>Create on : 2016年9月30日 下午1:32:35<br>
	 * </strong>
	 * <p>
	 * 
	 * @param tableName
	 * @param row
	 * @return int
	 * @throws
	 * @author ShiYing.Ke<br>
	 * @version <strong>v1.0.0</strong><br>
	 * <br>
	 *          <strong>修改历史:</strong><br>
	 *          修改人 | 修改日期 | 修改描述<br>
	 *          -------------------------------------------<br>
	 * <br>
	 * <br>
	 */
	public int insertRow(String tableName, Map<String, Object> row);

	/**
	 * <strong>Title : updateRow<br>
	 * </strong> <strong>Description : </strong>对指定的数据库表tableName修改一行数据row。<br>
	 * <strong>Create on : 2016年9月30日 下午1:33:37<br>
	 * </strong>
	 * <p>
	 * 
	 * @param tableName
	 * @param row
	 *            void
	 * @throws
	 * @author ShiYing.Ke<br>
	 * @version <strong>v1.0.0</strong><br>
	 * <br>
	 *          <strong>修改历史:</strong><br>
	 *          修改人 | 修改日期 | 修改描述<br>
	 *          -------------------------------------------<br>
	 * <br>
	 * <br>
	 */
	public void updateRow(String tableName, Map<String, Object> row);

	/**
	 * <strong>Title : deleteRow<br>
	 * </strong> <strong>Description :
	 * </strong>对指定的数据库表tableName删除一行数据，用ID标识要删除的行。<br>
	 * <strong>Create on : 2016年9月30日 下午1:34:05<br>
	 * </strong>
	 * <p>
	 * 
	 * @param tableName
	 * @param id
	 *            void
	 * @throws
	 * @author ShiYing.Ke<br>
	 * @version <strong>v1.0.0</strong><br>
	 * <br>
	 *          <strong>修改历史:</strong><br>
	 *          修改人 | 修改日期 | 修改描述<br>
	 *          -------------------------------------------<br>
	 * <br>
	 * <br>
	 */
	public void deleteRow(String tableName, int id);

	/**
	 * <strong>Title : selectRows<br>
	 * </strong> <strong>Description :
	 * </strong>对指定的数据库表tableName，按sql语句进行检索，可以带参数并返回匹配的数据行。<br>
	 * <strong>Create on : 2016年9月30日 下午1:34:48<br>
	 * </strong>
	 * <p>
	 * 
	 * @param tableName
	 * @param parameters
	 * @return List<Map<String,Object>>
	 * @throws
	 * @author ShiYing.Ke<br>
	 * @version <strong>v1.0.0</strong><br>
	 * <br>
	 *          <strong>修改历史:</strong><br>
	 *          修改人 | 修改日期 | 修改描述<br>
	 *          -------------------------------------------<br>
	 * <br>
	 * <br>
	 */
	public List<Map<String, Object>> selectRows(String tableName,
												Map<String, Object> parameters);

}
